package com.yunhai.device.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yunhai.common.dto.PaginationVo;
import com.yunhai.model.entity.dms.DmsDeviceInfoEntity;
import com.yunhai.model.vo.dms.DmsDeviceInfoQuery;
import com.yunhai.model.vo.dms.DmsDeviceInfoVo;

import java.util.List;
import java.util.Set;


public interface DeviceInfoService {

	/**
	 * 获取 DeviceInfo 分页列表
	 */
	public IPage getDeviceInfoPagination(PaginationVo paginationVo, DmsDeviceInfoQuery dmsDeviceInfoQuery ) throws Exception;


	/**
	 * 获取 DeviceInfo 所有数据
	 *
	 */
	public List<DmsDeviceInfoEntity> getDeviceInfoAllList(DmsDeviceInfoQuery dmsDeviceInfoQuery ) throws Exception;


	/**
	 * 获取 DeviceInfo 详情
	 */
	public DmsDeviceInfoEntity getDeviceInfoDetail( Long id) throws Exception;


	public DmsDeviceInfoEntity getDeviceInfoDetailByImei( String imei) throws Exception;

	/**
	 * 新增 DeviceInfo
	 * */
	public void addDeviceInfo(DmsDeviceInfoVo dmsDeviceInfoVo) throws Exception;


	/**
	 * 更新 DeviceInfo
	 * */
	public void updateDeviceInfo( DmsDeviceInfoVo dmsDeviceInfoVo) throws Exception;


	/**
	 * 删除 DeviceInfo
	 * */
	public void batchRemoveDeviceInfo( List<Long> ids ) throws Exception;

    List<DmsDeviceInfoEntity> getDeviceInfoListByIds(Set<Long> deviceIds) throws Exception;
}